package com.xiaoshuidi.cloud.module.rooms.controller.admin.equipmentStocktakingList.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.time.LocalDate;

/**
 * @Description: 盘点清单 Base VO，提供给添加、修改、详细的子 VO 使用
 * 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
 * @Author: Link
 * @CreateTime: 2023-05-21 17:53
 * @Version: 1.0
 */
@Data
@Schema(description = "盘点清单基础BASE对象")
public class EquipmentStocktakingListBaseVO {

    /**
     * 盘点单ID
     */
    @Schema(description = "盘点单ID")
    private Long roomStocktakingId;

    /**
     * 资产类别ID
     */
    @Schema(description = "资产类别ID")
    private Long equipmentCategoryId;

    /**
     * 资产名称
     */
    @Schema(description = "资产名称")
    private String equipmentCategoryName;

    /**
     * 门店名称
     */
    @Schema(description = "门店名称")
    private String apartmentName;

    /**
     * 资产Id
     */
    @Schema(description = "资产Id")
    private Long equipmentId;

    /**
     * 房间id
     */
    @Schema(description = "关联的房间ID")
    private Long roomId;

    /**
     * 是否是公区
     */
    @Schema(description = "是否是公区", required = true)
    @NotNull(message = "是否是公区不能为空")
    private Boolean isPub;

    /**
     * 资产规格
     */
    @Schema(description = "资产规格")
    private String equipmentCategoryUnit;

    /**
     * 资产编号
     */
    @Schema(description = "资产编号")
    private String equipmentCode;

    /**
     * 供应商id
     */
    @Schema(description = "供应商ID")
    private Long supplierId;

    /**
     * 供应商名称
     */
    @Schema(description = "供应商名称")
    private String supplierName;

    /**
     * 供应商电话
     */
    @Schema(description = "供应商电话")
    private String supplierPhone;

    /**
     * 保修期
     */
    @Schema(description = "保修期")
    private LocalDate warrantyMonth;

    /**
     * 状态
     */
    @Schema(description = "状态")
    private String status;

}
